In recent years, there has been a proliferation of interconnection of computers into computer networks. Computer networks allow computers to communicate with each other to allow resource sharing, provide communication between users and to allow other forms of collaboration between software, hardware and users across multiple computers.
One method of characterizing computer networks is geographically. Thus, networked computers which reside in a single building or campus are often referred to as a local area network or LAN. Computers which are networked to cross a wider geographic range such as across a city, state or country are often referred to as a wide area network or WAN. Furthermore, networks of computers may be interconnected to provide further communication between computers. Thus, for example, it is not uncommon for a network to be connected to another network by one or more devices. These devices are commonly called gateways and may be a computer, router, bridge or other electronic device which may be used to route message traffic between networks. Gateways may connect a LAN to a LAN, a LAN to a WAN or any combination of network to network. Gateways may also compensate for differences in protocols between the two networks. Thus, for example, a group of Transmission Control Protocol/Internet Protocol (TCP/IP) LANs may be interconnected by a Systems Network Architecture (SNA) WAN via a gateway.
As the size of local area networks has increased the amount of traffic carried by a gateway has also increased. To compensate for this increase in inter-network traffic, many networks have increased the number of gateways providing access to networks external to the LAN. Thus, it is not uncommon for two networks to be connected by multiple gateways. One problem which arises when multiple gateways are provided to a LAN is how to balance the traffic load between the gateways. This problem of load balancing may be explained with an example.
In a possible interconnection of computer networks, multiple computer networks are interconnected through gateway devices. These gateway devices may interconnect the multiple computer networks through a wide area network (WAN). When a workstation on a first local area network (LAN) sends a message to a device outside of the first LAN, one of the gateway devices connected to the first LAN forwards the message to the WAN and on to the network of the destination device. The gateways connecting the first LAN to the WAN may be referred to as parallel gateways as they each interconnect the same networks.
If there are many workstations on a single LAN requiring access to the WAN and most or all of the workstations utilize only one of multiple parallel gateways available the remaining gateways are underutilized and the utilized gateway may become a bottle-neck to communications outside the LAN. This may defeat the purpose of having parallel gateways as limited performance advantage may be obtained unless the traffic is more equally divided between the gateways.
One solution to the load balancing problem is to have a system administrator establish a sysdef for all the routes for each device connected to the first LAN, the WAN and the other LANs connected to the WAN. This sysdef, combined with native route exchange algorithms on the LANs would then keep all of the gateways or computers at a particular site up-to-date. However, this approach may require a large number of sysdefs which is human intensive and prone to error.
In view of the above discussion, there exists a need for improvement in the allocation of gateway resources in interconnecting networks. In particular, improvement is needed in the area of load balancing between gateways interconnecting two computer networks.